﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using Bussines;

namespace Bussines
{
    public class clMEGJEGYZESEK
    {
        private SqlConnection sc;
        TBLObj pBLObj = new TBLObj();
        private int _PRT_ID = -1;

        SqlDataAdapter adapterMEGJEGYZESEK;

        DataSet dsMEGJEGYZESEK;

        public clMEGJEGYZESEK(TBLObj iBLObj, int iPRT_ID)
        {
            pBLObj = iBLObj;
            sc = iBLObj.sqlConnection;
            _PRT_ID = iPRT_ID;
        }

        public DataSet GetMegjegyzesek()
        {
            dsMEGJEGYZESEK = new DataSet();
            adapterMEGJEGYZESEK = new SqlDataAdapter();

            adapterMEGJEGYZESEK.SelectCommand = new SqlCommand("SELECT * FROM MEGJEGYZESEK " +
                "WHERE MGJ_PRT_ID = " + _PRT_ID.ToString(), sc);
            adapterMEGJEGYZESEK.Fill(dsMEGJEGYZESEK, "MEGJEGYZESEK");
            /*  insertCommand();
            updateCommandCACT();*/

            return dsMEGJEGYZESEK;
        }

        public bool SaveMegjegyzesek(int iMGJ_ID, int iMGJ_PRT_ID, string iMGJ_MEGJEGYZES, ref string oErr)
        {
            SqlCommand cmd = new SqlCommand();
            SqlCommand cmd_insert = new SqlCommand();

            oErr = "";

            cmd.Connection = sc;
            cmd_insert.Connection = sc;

            cmd.CommandType = CommandType.Text;
            cmd_insert.CommandType = CommandType.Text;

            cmd.CommandText = "UPDATE MEGJEGYZESEK SET " +
                "MGJ_PRT_ID = @MGJ_PRT_ID , " +
                "MGJ_MEGJEGYZES = @MGJ_MEGJEGYZES " +
                "WHERE MGJ_ID = @MGJ_ID ";

            cmd.Parameters.Add(new SqlParameter("MGJ_PRT_ID", SqlDbType.Int));
            cmd.Parameters.Add(new SqlParameter("MGJ_MEGJEGYZES", SqlDbType.VarChar));
            cmd.Parameters.Add(new SqlParameter("MGJ_ID", SqlDbType.Int));

            cmd.Parameters["MGJ_PRT_ID"].Value = iMGJ_PRT_ID ;
            cmd.Parameters["MGJ_MEGJEGYZES"].Value = iMGJ_MEGJEGYZES;
            cmd.Parameters["MGJ_ID"].Value = iMGJ_ID ;

            cmd_insert.CommandText = "INSERT INTO MEGJEGYZESEK " +
                "(MGJ_PRT_ID, MGJ_MEGJEGYZES) " +
                "VALUES " +
                "(@MGJ_PRT_ID, @MGJ_MEGJEGYZES) ";

            cmd_insert.Parameters.Add(new SqlParameter("MGJ_MEGJEGYZES", SqlDbType.VarChar));
            cmd_insert.Parameters.Add(new SqlParameter("MGJ_PRT_ID", SqlDbType.Int));
           
            cmd_insert.Parameters["MGJ_MEGJEGYZES"].Value = iMGJ_MEGJEGYZES;
            cmd_insert.Parameters["MGJ_PRT_ID"].Value = iMGJ_PRT_ID;

            try
            {
                if (iMGJ_ID == -1)
                {
                    cmd_insert.ExecuteNonQuery();
                }
                else
                {
                    cmd.ExecuteNonQuery();
                }
                return true;
            }
            catch (Exception e)
            {

                string s = "Hiba a megjegytés mentése közben!";
                Utilities.LogError(pBLObj, e, "clMEGJEGYZESEK", s);
                oErr = s;
                return false;
            }
        }

    }
}
